#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2023/9/1 22:03
# @Author : 闫峰
# @File    : set_amazon_sales_ban_es.py
import os
import threading
import time

import requests

from common.setting import ensure_path_sep
from utils.logging_tool.log_control import LogHandler
from utils.mysqlUtils.db_pool import Database
from utils.mysqlUtils.sql_server_utils import MSSQL
from concurrent.futures import ThreadPoolExecutor
from functools import partial

current_path = os.path.abspath(__file__)
current_dir = os.path.dirname(current_path)
path_list = current_path.split("\\")
dis_path = "\\".join(path_list[-2:-1])


def remove_file(info_path):
    if os.path.exists(info_path):
        os.remove(info_path)
    else:
        print(f"{info_path} 不存在")


info_path = ensure_path_sep(f"\\logs\\info-{dis_path}{time.time()}")
error_path = ensure_path_sep(f"\\logs\\\error-{dis_path}{time.time()}.log")
warning_path = ensure_path_sep(f"\\logs\\warning-{dis_path}{time.time()}.log")
remove_file(info_path)
remove_file(error_path)
remove_file(warning_path)
INFO = LogHandler(info_path, level='info')
ERROR = LogHandler(error_path, level='error')
WARNING = LogHandler(warning_path, level='warning')


class Set_amazon_sales_ban:
    db = MSSQL(ensure_path_sep("\\config\\config.yaml"), "sqlserver_db_erp_base")
    insert_db = Database(ensure_path_sep("\\config\\ceshi_mysql_config.yaml"), "log_db")

    def set_amazon_sales_ban(self):

        res_list = []
        offset_start = 0

        while True:
            sql1 = """
            SELECT top 1000 id FROM [dbo].[RB_Product] WHERE id > %s ORDER BY id 
            """
            res1 = self.db.ExecQuery(sql1, (offset_start,))

            if res1:
                res1 = list(map(lambda x: x[0], res1))
                offset_min = min(res1)
                offset_max = max(res1)
                res_list.append((offset_min, offset_max))
                offset_start = offset_max
            else:
                break
        return res_list

    @staticmethod
    def handler(id_interval):
        db = MSSQL(ensure_path_sep("\\config\\config.yaml"), "sqlserver_db_erp_base")
        insert_db = Database(ensure_path_sep("\\config\\ceshi_mysql_config.yaml"), "log_db")

        sql2 = """
        SELECT top 1000 sku FROM [dbo].[RB_Product] WHERE id >= %s AND id <= %s
        """
        res2 = db.ExecQuery(sql2, (id_interval[0], id_interval[1]))
        sku_list = list(map(lambda x: x[0], res2))
        new_lst = ["'" + x + "'" for x in sku_list]
        new_s = ",".join(new_lst)
        # for sku in sku_list:
        headers = {
            "Authorization": "Basic aXJvYm90Ym94OmkxcjVvOEJvdGJveA=="
        }
        url = "http://erplog.zhcxkj.com/api/systems/logs/List"
        json_data = {
            "input": {
                "tableName": "RB_Product_Log_1",
                "equal": [
                    {
                        "fieldName": "CustomerID",
                        "value": "1",
                        "dataType": 1
                    }
                ],
                "ins": [{
                    "fieldName": "SKU",
                    "value": new_s,
                    "dataType": 1
                }],
                "likes": [
                    {
                        "fieldName": "OperationTxt",
                        "value": "产品标签为",
                        "dataType": 3
                    }
                ],
                "ranges": [
                    {
                        "fieldName": "AddTime",
                        "dataType": 2,
                        "beginValueGX": "gt",
                        "beginValue": "2023-07-06",
                        "endValueGX": "lt",
                        "endValue": "2023-09-01"
                    }
                ],
                "orderBy": [
                    {
                        "fieldName": "AddTime",
                        "value": "-1",
                        "dataType": 0
                    }
                ],
                "current": 1,
                "pageSize": 2000
            }
        }

        res3 = requests.post(url=url, json=json_data, headers=headers).json()

        if res3.get('data'):
            INFO.logger.info(f"id_interval={id_interval}有数据 \n ")
            res4 = res3.get('data').get('dataSource')
            data_list = list(
                map(lambda data: (data.get('id'), data.get('sku'), data.get('operationtxt'), data.get('addtime')),
                    res4))
            # 插入数据库
            insert_sql = """
            INSERT IGNORE INTO znkdceshilog.set_amazon_sales_ban_copy1_copy1_copy1 (erp_id, sku, text,addtime)
            VALUES (%s, %s, %s,%s);
            """
            row1 = insert_db.execute_many(insert_sql, data_list)
            if row1 == 0:
                ERROR.logger.error(f"""
            INSERT IGNORE INTO znkdceshilog.set_amazon_sales_ban_copy1_copy1_copy1 (erp_id, sku, text,addtime)
            VALUES (%s, %s, %s,%s);
            插入失败
            data_list={data_list}
                """)
        INFO.logger.info(f"thread_id={threading.current_thread().ident} 执行完了id_interval={id_interval} \n ")


if __name__ == '__main__':
    # Set_amazon_sales_ban().set_amazon_sales_ban()
    #
    t = Set_amazon_sales_ban()
    # res_list = t.set_amazon_sales_ban()
    # print()
    res_list = [(3263, 5877), (5879, 7970), (7971, 10850), (10852, 19462), (19467, 24402), (24403, 33414),
                (33415, 45755), (45756, 46994), (46995, 48162), (48163, 49278), (49279, 50330), (50331, 51488),
                (51489, 53637), (53639, 55066), (55068, 56621), (56622, 58392), (58394, 59854), (59856, 61101),
                (61102, 62328), (62329, 63439), (63440, 64521), (64522, 65524), (65525, 66524), (66525, 67597),
                (67599, 68674), (68675, 69772), (69773, 70947), (70948, 72124), (72126, 74357), (74360, 77758),
                (77759, 83065), (83066, 88246), (88247, 91111), (91112, 92193), (92194, 93311), (93312, 94420),
                (94421, 95477), (95478, 96826), (96827, 98037), (98038, 99131), (99132, 100192), (100193, 101263),
                (101264, 102338), (102339, 103395), (103396, 104439), (104440, 105488), (105489, 106523),
                (106524, 107577), (107578, 108677), (108686, 109797), (109798, 110821), (110822, 111879),
                (111880, 112932), (112933, 113974), (113975, 168791), (168792, 169845), (169846, 170847),
                (170848, 171847), (171848, 172875), (172876, 173877), (173878, 174877), (174878, 175877),
                (175878, 176877), (176878, 177879), (177880, 178879), (178880, 179906), (179909, 180924),
                (180925, 181924), (181925, 182984), (182985, 184007), (184008, 185019), (185020, 186055),
                (186056, 187075), (187076, 188098), (188099, 189211), (189212, 190220), (190221, 191285),
                (191286, 192308), (192309, 193308), (193309, 194309), (194310, 195309), (195310, 196309),
                (196310, 197309), (197310, 198309), (198310, 199309), (199310, 200309), (200310, 201309),
                (201310, 202309), (202310, 203309), (203310, 204312), (204313, 205316), (205317, 206317),
                (206318, 207317), (207318, 208321), (208322, 209321), (209322, 210321), (210322, 211323),
                (211324, 212323), (212324, 213323), (213324, 214323), (214324, 215323), (215324, 216323),
                (216324, 217323), (217324, 218323), (218324, 219323), (219324, 220323), (220324, 221323),
                (221324, 222323), (222324, 223323), (223324, 224323), (224324, 225323), (225324, 226323),
                (226324, 227323), (227324, 228323), (228324, 229323), (229324, 230323), (230324, 231323),
                (231324, 232323), (232324, 233323), (233324, 234323), (234324, 235323), (235324, 236323),
                (236324, 237323), (237324, 238323), (238324, 239323), (239324, 240323), (240324, 241323),
                (241324, 242323), (242324, 243323), (243324, 244323), (244324, 245323), (245324, 246323),
                (246324, 247323), (247324, 248323), (248324, 249323), (249324, 250323), (250324, 251323),
                (251324, 252323), (252324, 253323), (253324, 254323), (254324, 255323), (255324, 256323),
                (256324, 257323), (257324, 258323), (258324, 259323), (259324, 260323), (260324, 261323),
                (261324, 262325), (262326, 263326), (263327, 264328), (264329, 265328), (265329, 266328),
                (266329, 267340), (267341, 268340), (268341, 269340), (269341, 270341), (270342, 271345),
                (271346, 272346), (272347, 273347), (273348, 274347), (274348, 275347), (275348, 276348),
                (276349, 277349), (277350, 278349), (278350, 279349), (279350, 280353), (280354, 281357),
                (281358, 282363), (282364, 283364), (283365, 284367), (284368, 285374), (285375, 286375),
                (286376, 287378), (287379, 288384), (288385, 289389), (289390, 290393), (290394, 291406),
                (291407, 292406), (292407, 293412), (293413, 294417), (294418, 295423), (295424, 296425),
                (296426, 297429), (297430, 298433), (298434, 299461), (299462, 300488), (300489, 301498),
                (301499, 302522), (302523, 303538), (303539, 304544), (304545, 305558), (305559, 306558),
                (306559, 307561), (307562, 308562), (308563, 309572), (309573, 310581), (310582, 311589),
                (311590, 312590), (312591, 313590), (313591, 314596), (314597, 315610), (315611, 316619),
                (316620, 317623), (317624, 318636), (318637, 319647), (319648, 320661), (320662, 321684),
                (321685, 322702), (322703, 323739), (323740, 324764), (324766, 325782), (325783, 326805),
                (326806, 327832), (327833, 328847), (328848, 329871), (329872, 330892), (330893, 331920),
                (331921, 332956), (332957, 333976), (333977, 335026), (335027, 336090), (336091, 337135),
                (337136, 338180), (338181, 339231), (339232, 340263), (340264, 341282), (341283, 342296),
                (342297, 343313), (343314, 344333), (344334, 345343), (345344, 346355), (346356, 347363),
                (347364, 348371), (348372, 349390), (349391, 350404), (350405, 351423), (351424, 352451),
                (352452, 353478), (353479, 354491), (354492, 355519), (355520, 356546), (356547, 357580),
                (357581, 358596), (358597, 359614), (359615, 360625), (360626, 361640), (361641, 362702),
                (362703, 363773), (363774, 364787), (364788, 365802), (365803, 366824), (366825, 367841),
                (367842, 368848), (368849, 369854), (369855, 370867), (370868, 371880), (371881, 372897),
                (372898, 373907), (373908, 374912), (374913, 375935), (375936, 376944), (376945, 377957),
                (377958, 378963), (378964, 379969), (379970, 380984), (380985, 381998), (381999, 383005),
                (383006, 384016), (384017, 385024), (385025, 386038), (386039, 387051), (387052, 388069),
                (388070, 389084), (389086, 390098), (390099, 391109), (391110, 392119), (392120, 393124),
                (393125, 394139), (394140, 395153), (395154, 396159), (396160, 397160), (397161, 398166),
                (398167, 399173), (399174, 400182), (400183, 401195), (401196, 402202), (402203, 403220),
                (403221, 404227), (404228, 405237), (405238, 406251), (406252, 407295), (407296, 408307),
                (408308, 409321), (409322, 410331), (410332, 411341), (411342, 412348), (412349, 413364),
                (413365, 414375), (414376, 415409), (415410, 416420), (416421, 417426), (417427, 418433),
                (418434, 419439), (419440, 420505), (420506, 421523), (421524, 422539), (422540, 423548),
                (423549, 424569), (424570, 425576), (425577, 426582), (426583, 427587), (427588, 428596),
                (428597, 429610), (429611, 430699), (430700, 431734), (431735, 432742), (432743, 433746),
                (433747, 434754), (434755, 435768), (435769, 436776), (436777, 437784), (437785, 438791),
                (438792, 439799), (439800, 440805), (440806, 441813), (441814, 442822), (442823, 443829),
                (443830, 444832), (444833, 445837), (445838, 446843), (446844, 447851), (447852, 448860),
                (448861, 449870), (449871, 450877), (450878, 451887), (451888, 452897), (452898, 453905),
                (453906, 454906), (454907, 455913), (455914, 456923), (456924, 457932), (457933, 458938),
                (458939, 459948), (459949, 460960), (460961, 461970), (461971, 462979), (462980, 463986),
                (463987, 464998), (464999, 466003), (466004, 467011), (467012, 468015), (468016, 469024),
                (469025, 470030), (470031, 471039), (471040, 472052), (472053, 473063), (473064, 474070),
                (474071, 475083), (475084, 476090), (476091, 477101), (477102, 478118), (478119, 479137),
                (479138, 480158), (480159, 481172), (481173, 482192), (482193, 483204), (483205, 484213),
                (484214, 485242), (485243, 486247), (486248, 488259), (488260, 489266), (489267, 490270),
                (490271, 491275), (491276, 492280), (492281, 493290), (493292, 494304), (494305, 495312),
                (495313, 496318), (496319, 497329), (497330, 498338), (498339, 499347), (499348, 500406),
                (500407, 501411), (501412, 502418), (502419, 503429), (503430, 504443), (504444, 505456),
                (505457, 506462), (506463, 507475), (507476, 508509), (508510, 509515), (509516, 510528),
                (510529, 511543), (511544, 512557), (512558, 513567), (513568, 514576), (514577, 515595),
                (515596, 516606), (516607, 517614), (517615, 518617), (518618, 519624), (519625, 520634),
                (520635, 521662), (521663, 522665), (522666, 523674), (523675, 524824), (524825, 525831),
                (525832, 526839), (526840, 527844), (527845, 528855), (528856, 529866), (529867, 530876),
                (530877, 531892), (531893, 532949), (532950, 533961), (533962, 534969), (534970, 535985),
                (535986, 537004), (537005, 538015), (538016, 539024), (539025, 540035), (540036, 541047),
                (541048, 542144), (542145, 543150), (543151, 544164), (544165, 545238), (545239, 546257),
                (546258, 547315), (547316, 548323), (548324, 549631), (549632, 550883), (550884, 551894),
                (551895, 552904), (552905, 553989), (553990, 554989), (554990, 555989), (555990, 557774),
                (557775, 558947), (558948, 559947), (559948, 560947), (560948, 561950), (561951, 562950),
                (562951, 563951), (563952, 564951), (564952, 565952), (565953, 566952), (566953, 567952),
                (567953, 568952), (568953, 569952), (569953, 570952), (570953, 571952), (571953, 573143),
                (573144, 574143), (574144, 575143), (575144, 576144), (576145, 577144), (577145, 578255),
                (578256, 579392), (579393, 580392), (580393, 581392), (581393, 582392), (582393, 583392),
                (583393, 584398), (584399, 585544), (585545, 586544), (586545, 587544), (587545, 588544),
                (588545, 589589), (589590, 590589), (590590, 591589), (591590, 592590), (592591, 593590),
                (593591, 594767), (594768, 595798), (595799, 596798), (596799, 597798), (597799, 599003),
                (599004, 600003), (600004, 601004), (601005, 602004), (602005, 603004), (603005, 604120),
                (604121, 605120), (605121, 606121), (606122, 607121), (607122, 608122), (608123, 609122),
                (609123, 610122), (610123, 611122), (611123, 612136), (612137, 613136), (613137, 614136),
                (614137, 615163), (615164, 616163), (616164, 617163), (617164, 618163), (618164, 619164),
                (619165, 620164), (620165, 621164), (621165, 622164), (622165, 623164), (623165, 624164),
                (624165, 625164), (625165, 626164), (626165, 627164), (627165, 628164), (628165, 629164),
                (629165, 630164), (630165, 631165), (631166, 632166), (632167, 633168), (633169, 634168),
                (634169, 635168), (635169, 636168), (636169, 637168), (637169, 638169), (638170, 639379),
                (639380, 640379), (640380, 641379), (641380, 642379), (642380, 643379), (643380, 644379),
                (644380, 645379), (645380, 646379), (646380, 647379), (647380, 648379), (648380, 649384),
                (649385, 650384), (650385, 651384), (651385, 652384), (652385, 653384), (653385, 654384),
                (654385, 655384), (655385, 656384), (656385, 657384), (657385, 658384), (658385, 659385),
                (659386, 660385), (660386, 661385), (661386, 662385), (662386, 663385), (663386, 664385),
                (664386, 665385), (665386, 666385), (666386, 667385), (667386, 668385), (668386, 669385),
                (669386, 670385), (670386, 671429), (671430, 672429), (672430, 673533), (673534, 674533),
                (674534, 675534), (675535, 676535), (676536, 677535), (677536, 678535), (678536, 679535),
                (679536, 680535), (680536, 681535), (681536, 682535), (682536, 683535), (683536, 684535),
                (684536, 685614), (685615, 686614), (686615, 687614), (687615, 688614), (688615, 689614),
                (689615, 690614), (690615, 691615), (691616, 692615), (692616, 693615), (693616, 695165),
                (695166, 696165), (696166, 697165), (697166, 698165), (698166, 699165), (699166, 700165),
                (700166, 701165), (701166, 702165), (702166, 703165), (703166, 704165), (704166, 705165),
                (705166, 706327), (706328, 707364), (707365, 708364), (708365, 709364), (709365, 710364),
                (710365, 711364), (711365, 712408), (712409, 713408), (713409, 714409), (714410, 715409),
                (715410, 716409), (716410, 717409), (717410, 718409), (718410, 719409), (719410, 720409),
                (720410, 721409), (721410, 722409), (722410, 723409), (723410, 724409), (724410, 725409),
                (725410, 726409), (726410, 727409), (727410, 728411), (728412, 729411), (729412, 730411),
                (730412, 731411), (731412, 732411), (732412, 733411), (733412, 734411), (734412, 735411),
                (735412, 736411), (736412, 737411), (737412, 738411), (738412, 739411), (739412, 740457),
                (740458, 741457), (741458, 742457), (742458, 743457), (743458, 744457), (744458, 745457),
                (745458, 746457), (746458, 747470), (747471, 748470), (748471, 749512), (749513, 750513),
                (750514, 751513), (751514, 752513), (752514, 753533), (753534, 754534), (754535, 755534),
                (755535, 756534), (756535, 757535), (757536, 758535), (758536, 759535), (759536, 760604),
                (760605, 761604), (761605, 762604), (762605, 763604), (763605, 764604), (764605, 765604),
                (765605, 766604), (766605, 767604), (767605, 768604), (768605, 769604), (769605, 770604),
                (770605, 771606), (771607, 772607), (772608, 773608), (773609, 774608), (774609, 775608),
                (775609, 776608), (776609, 777608), (777609, 778608), (778609, 779609), (779610, 780609),
                (780610, 781610), (781611, 782610), (782611, 783650), (783651, 784650), (784651, 785650),
                (785651, 786650), (786651, 787650), (787651, 788651), (788652, 789652), (789653, 790652),
                (790653, 791697), (791698, 792698), (792699, 793698), (793699, 794698), (794699, 795698),
                (795699, 796698), (796699, 797700), (797701, 798701), (798702, 799703), (799704, 800703),
                (800704, 801703), (801704, 802703), (802704, 803703), (803704, 804703), (804704, 805703),
                (805704, 806703), (806704, 807703), (807704, 808703), (808704, 809703), (809704, 810703),
                (810704, 811703), (811704, 812703), (812704, 813703), (813704, 814703), (814704, 815703),
                (815704, 816703), (816704, 817703), (817704, 818703), (818704, 819703), (819704, 820703),
                (820704, 821703), (821704, 822704), (822705, 823704), (823705, 824705), (824706, 825705),
                (825706, 826705), (826706, 827705), (827706, 828705), (828706, 829705), (829706, 830705),
                (830706, 831705), (831706, 832705), (832706, 833705), (833706, 834705), (834706, 835705),
                (835706, 836706), (836707, 837706), (837707, 838706), (838707, 839706), (839707, 840706),
                (840707, 841706), (841707, 842706), (842707, 843711), (843712, 844723), (844724, 845723),
                (845724, 846723), (846724, 847723), (847724, 848734), (848735, 849737), (849738, 850738),
                (850739, 851738), (851739, 852738), (852739, 853738), (853739, 854738), (854739, 855739),
                (855740, 856740), (856741, 857740), (857741, 858741), (858742, 859742), (859743, 860742),
                (860743, 861742), (861743, 862742), (862743, 863742), (863743, 864743), (864744, 865744),
                (865745, 866744), (866745, 867744), (867745, 868745), (868746, 869745), (869746, 870745),
                (870746, 871745), (871746, 872745), (872746, 873745), (873746, 874745), (874746, 875746),
                (875747, 876746), (876747, 877746), (877747, 878746), (878747, 879746), (879747, 880746),
                (880747, 881747), (881748, 882747), (882748, 883747), (883748, 884748), (884749, 885748),
                (885749, 886748), (886749, 887748), (887749, 888751), (888752, 889751), (889752, 890752),
                (890753, 891752), (891753, 892752), (892753, 893752), (893753, 894804), (894805, 895804),
                (895805, 896804), (896805, 897806), (897807, 898806), (898807, 899806), (899807, 900806),
                (900807, 901806), (901807, 902807), (902808, 903807), (903808, 904807), (904808, 905808),
                (905809, 906808), (906809, 907808), (907809, 908812), (908813, 909812), (909813, 910813),
                (910814, 911814), (911815, 912814), (912815, 913816), (913817, 914816), (914817, 915818),
                (915819, 916819), (916820, 917823), (917824, 918823), (918824, 919823), (919824, 920824),
                (920825, 921825), (921826, 922826), (922827, 923826), (923827, 924827), (924828, 925832),
                (925833, 926833), (926834, 927833), (927834, 928835), (928836, 929837), (929838, 930838),
                (930839, 931839), (931840, 932840), (932841, 933841), (933842, 934841), (934842, 935841),
                (935842, 936842), (936843, 937842), (937843, 938846), (938847, 939847), (939848, 940847),
                (940848, 941847), (941848, 942849), (942850, 943849), (943850, 944850), (944851, 945852),
                (945853, 946852), (946853, 947933), (947934, 948935), (948936, 949936), (949937, 950936),
                (950937, 951936), (951937, 952936), (952937, 953937), (953938, 954937), (954938, 955939),
                (955940, 956940), (956941, 957940), (957941, 958940), (958941, 959940), (959941, 960940),
                (960941, 961940), (961941, 962940), (962941, 963940), (963941, 964941), (964942, 965942),
                (965943, 966942), (966943, 967942), (967943, 968942), (968943, 969942), (969943, 970942),
                (970943, 971942), (971943, 972942), (972943, 973943), (973944, 974944), (974945, 975946),
                (975947, 976946), (976947, 977946), (977947, 978946), (978947, 979946), (979947, 980947),
                (980948, 981948), (981949, 982948), (982949, 983949), (983950, 984949), (984950, 985950),
                (985951, 986950), (986951, 987951), (987952, 988952), (988953, 990024), (990026, 991026),
                (991027, 992026), (992027, 993026), (993027, 994026), (994027, 995026), (995027, 996026),
                (996027, 997026), (997027, 998049), (998050, 999049), (999050, 1000057), (1000058, 1001152),
                (1001153, 1002152), (1002153, 1003152), (1003153, 1004152), (1004153, 1005154), (1005155, 1006156),
                (1006157, 1007156), (1007157, 1008157), (1008158, 1009157), (1009158, 1010178), (1010179, 1011178),
                (1011179, 1012178), (1012179, 1013178), (1013179, 1014178), (1014179, 1015179), (1015180, 1016179),
                (1016180, 1017179), (1017180, 1018179), (1018180, 1019179), (1019180, 1020179), (1020180, 1021182),
                (1021183, 1022183), (1022184, 1023191), (1023192, 1024191), (1024192, 1025196), (1025197, 1026196),
                (1026197, 1027196), (1027197, 1028199), (1028200, 1029201), (1029202, 1030204), (1030205, 1031204),
                (1031205, 1032204), (1032205, 1033204), (1033205, 1034205), (1034206, 1035208), (1035209, 1036208),
                (1036209, 1037208), (1037209, 1038209), (1038210, 1039209), (1039210, 1040210), (1040211, 1041210),
                (1041211, 1042211), (1042212, 1043211), (1043212, 1044211), (1044212, 1045211), (1045212, 1046211),
                (1046212, 1047211), (1047212, 1048212), (1048213, 1049212), (1049213, 1050212), (1050213, 1051212),
                (1051213, 1052212), (1052213, 1053212), (1053213, 1054214), (1054215, 1055214), (1055215, 1056216),
                (1056217, 1057216), (1057217, 1058216), (1058217, 1059216), (1059217, 1060216), (1060217, 1061216),
                (1061217, 1062216), (1062217, 1063217), (1063218, 1064217), (1064218, 1065217), (1065218, 1066218),
                (1066219, 1067228), (1067229, 1068229), (1068230, 1069229), (1069230, 1070229), (1070230, 1071229),
                (1071230, 1072231), (1072232, 1074229), (1074230, 1075230), (1075231, 1076286), (1076287, 1077287),
                (1077288, 1078289), (1078290, 1079291), (1079292, 1080294), (1080295, 1081294), (1081295, 1082294),
                (1082295, 1083295), (1083296, 1084297), (1084298, 1085297), (1085298, 1086297), (1086298, 1087297),
                (1087298, 1088299), (1088300, 1089299), (1089300, 1090300), (1090301, 1091300), (1091301, 1092302),
                (1092303, 1093302), (1093303, 1094304), (1094305, 1095304), (1095305, 1096305), (1096306, 1097305),
                (1097306, 1098306), (1098307, 1099307), (1099308, 1100307), (1100308, 1101307), (1101308, 1102308),
                (1102309, 1103308), (1103309, 1104308), (1104309, 1105310), (1105311, 1106311), (1106312, 1107316),
                (1107317, 1108316), (1108317, 1109316), (1109317, 1110316), (1110317, 1111316), (1111317, 1112318),
                (1112319, 1113318), (1113319, 1114321), (1114322, 1115321), (1115322, 1116321), (1116322, 1117321),
                (1117322, 1118321), (1118322, 1119321), (1119322, 1120323), (1120324, 1121324), (1121325, 1122324),
                (1122325, 1123326), (1123327, 1124328), (1124329, 1125329), (1125330, 1126331), (1126332, 1127331),
                (1127332, 1128331), (1128332, 1129338), (1129339, 1130339), (1130340, 1131339), (1131340, 1132345),
                (1132346, 1133355), (1133356, 1134356), (1134357, 1135356), (1135357, 1136357), (1136358, 1137357),
                (1137358, 1138357), (1138358, 1139357), (1139358, 1140357), (1140358, 1141359), (1141360, 1142361),
                (1142362, 1143361), (1143362, 1144362), (1144363, 1145364), (1145365, 1146371), (1146372, 1147371),
                (1147372, 1148371), (1148372, 1149373), (1149374, 1150373), (1150374, 1151374), (1151375, 1152374),
                (1152375, 1153374), (1153375, 1154374), (1154375, 1155375), (1155376, 1156375), (1156376, 1157375),
                (1157376, 1158375), (1158376, 1159375), (1159376, 1160375), (1160376, 1161377), (1161378, 1162378),
                (1162379, 1163378), (1163379, 1164379), (1164380, 1165381), (1165382, 1166382), (1166383, 1167383),
                (1167384, 1168383), (1168384, 1169383), (1169384, 1170384), (1170385, 1171384), (1171385, 1172386),
                (1172387, 1173386), (1173387, 1174388), (1174389, 1175390), (1175391, 1176390), (1176391, 1177390),
                (1177391, 1178392), (1178393, 1179392), (1179393, 1180394), (1180395, 1181394), (1181395, 1182396),
                (1182397, 1183399), (1183400, 1184400), (1184401, 1185400), (1185401, 1186400), (1186401, 1187400),
                (1187401, 1188400), (1188401, 1189400), (1189401, 1190402), (1190403, 1191402), (1191403, 1192404),
                (1192405, 1193404), (1193405, 1194404), (1194405, 1195405), (1195406, 1196407), (1196408, 1197420),
                (1197421, 1198420), (1198421, 1199421), (1199422, 1200422), (1200423, 1201424), (1201425, 1202424),
                (1202425, 1203424), (1203425, 1204424), (1204425, 1205425), (1205426, 1206425), (1206426, 1207426),
                (1207427, 1208427), (1208428, 1209427), (1209428, 1210427), (1210428, 1211427), (1211428, 1212427),
                (1212428, 1213428), (1213429, 1214428), (1214429, 1215429), (1215430, 1216449), (1216450, 1217449),
                (1217450, 1218450), (1218451, 1219451), (1219452, 1220461), (1220462, 1221461), (1221462, 1222461),
                (1222462, 1223462), (1223463, 1224462), (1224463, 1225464), (1225465, 1226464), (1226465, 1227465),
                (1227466, 1228465), (1228466, 1229465), (1229466, 1230465), (1230466, 1231465), (1231466, 1232465),
                (1232466, 1233465), (1233466, 1234465), (1234466, 1235465), (1235466, 1236465), (1236466, 1237465),
                (1237466, 1238466), (1238467, 1239466), (1239467, 1240466), (1240467, 1241529), (1241530, 1242529),
                (1242530, 1243529), (1243530, 1244529), (1244530, 1245530), (1245531, 1246532), (1246533, 1247535),
                (1247536, 1248535), (1248536, 1249573), (1249574, 1250580), (1250581, 1251585), (1251586, 1252652),
                (1252653, 1253655), (1253656, 1254657), (1254658, 1255657), (1255658, 1256659), (1256660, 1257661),
                (1257662, 1258662), (1258663, 1259664), (1259665, 1260664), (1260665, 1261664), (1261665, 1262664),
                (1262665, 1263666), (1263667, 1264667), (1264668, 1265667), (1265668, 1266668), (1266669, 1267676),
                (1267677, 1268676), (1268677, 1269680), (1269681, 1270680), (1270681, 1271680), (1271681, 1272680),
                (1272681, 1273692), (1273693, 1274694), (1274695, 1275726), (1275727, 1276726), (1276727, 1277726),
                (1277727, 1278730), (1278731, 1279731), (1279732, 1280731), (1280732, 1281735), (1281736, 1282735),
                (1282736, 1283738), (1283739, 1284739), (1284740, 1285739), (1285740, 1286739), (1286740, 1287740),
                (1287741, 1288741), (1288742, 1289741), (1289742, 1290741), (1290742, 1291741), (1291742, 1292741),
                (1292742, 1293741), (1293742, 1294742), (1294743, 1295742), (1295743, 1296744), (1296745, 1297744),
                (1297745, 1298746), (1298747, 1299746), (1299747, 1300748), (1300749, 1301748), (1301749, 1302752),
                (1302753, 1303752), (1303753, 1304754), (1304755, 1305755), (1305756, 1306755), (1306756, 1307757),
                (1307758, 1308765), (1308766, 1309799), (1309800, 1310803), (1310804, 1311805), (1311806, 1312805),
                (1312806, 1313807), (1313808, 1314807), (1314808, 1315812), (1315813, 1316813), (1316814, 1317814),
                (1317815, 1318814), (1318815, 1319819), (1319820, 1320823), (1320824, 1321827), (1321828, 1322850),
                (1322851, 1323850), (1323851, 1324853), (1324854, 1325855), (1325856, 1326856), (1326857, 1327856),
                (1327857, 1328859), (1328860, 1329862), (1329863, 1330862), (1330863, 1331917), (1331918, 1332920),
                (1332921, 1333922), (1333923, 1334923), (1334924, 1335923), (1335924, 1336923), (1336924, 1337923),
                (1337924, 1338923), (1338924, 1339923), (1339924, 1340923), (1340924, 1341923), (1341924, 1342923),
                (1342924, 1343923), (1343924, 1344923), (1344924, 1345924), (1345925, 1346925), (1346926, 1347926),
                (1347927, 1348926), (1348927, 1349926), (1349927, 1350926), (1350927, 1351926), (1351927, 1352928),
                (1352929, 1353928), (1353929, 1354929), (1354930, 1355929), (1355930, 1356929), (1356930, 1357929),
                (1357930, 1358929), (1358930, 1359929), (1359930, 1360929), (1360930, 1361929), (1361930, 1362929),
                (1362930, 1363929), (1363930, 1364929), (1364930, 1365929), (1365930, 1366929), (1366930, 1367929),
                (1367930, 1368929), (1368930, 1369929), (1369930, 1370929), (1370930, 1371929), (1371930, 1372929),
                (1372930, 1373929), (1373930, 1374929), (1374930, 1375929), (1375930, 1376929), (1376930, 1377929),
                (1377930, 1378930), (1378931, 1379930), (1379931, 1380931), (1380932, 1381931), (1381932, 1382932),
                (1382933, 1383932), (1383933, 1384936), (1384937, 1385936), (1385937, 1386936), (1386937, 1387936),
                (1387937, 1388936), (1388937, 1389936), (1389937, 1390936), (1390937, 1391936), (1391937, 1392936),
                (1392937, 1393936), (1393937, 1394936), (1394937, 1395936), (1395937, 1396936), (1396937, 1397936),
                (1397937, 1398937), (1398938, 1399937), (1399938, 1400937), (1400938, 1401937), (1401938, 1402937),
                (1402938, 1403937), (1403938, 1404937), (1404938, 1405937), (1405938, 1406937), (1406938, 1407937),
                (1407938, 1408937), (1408938, 1409937), (1409938, 1410937), (1410938, 1411937), (1411938, 1412937),
                (1412938, 1413937), (1413938, 1414937), (1414938, 1415937), (1415938, 1416937), (1416938, 1417937),
                (1417938, 1418937), (1418938, 1419937), (1419938, 1420937), (1420938, 1421937), (1421938, 1422937),
                (1422938, 1423937), (1423938, 1424937), (1424938, 1425937), (1425938, 1426937), (1426938, 1427937),
                (1427938, 1428937), (1428938, 1429937), (1429938, 1430937), (1430938, 1431937), (1431938, 1432937),
                (1432938, 1433937), (1433938, 1434937), (1434938, 1435937), (1435938, 1436937), (1436938, 1437937),
                (1437938, 1438937), (1438938, 1439938), (1439939, 1440938), (1440939, 1441938), (1441939, 1442938),
                (1442939, 1443938), (1443939, 1444938), (1444939, 1445938), (1445939, 1446938), (1446939, 1447938),
                (1447939, 1448942), (1448943, 1449943), (1449944, 1450943), (1450944, 1451944), (1451945, 1452949),
                (1452950, 1453950), (1453951, 1454950), (1454951, 1455950), (1455951, 1456950), (1456951, 1457950),
                (1457951, 1458950), (1458951, 1459950), (1459951, 1460950), (1460951, 1461950), (1461951, 1462950),
                (1462951, 1463950), (1463951, 1464950), (1464951, 1465950), (1465951, 1466950), (1466951, 1467953),
                (1467954, 1468953), (1468954, 1469953), (1469954, 1470954), (1470955, 1471954), (1471955, 1472954),
                (1472955, 1474943), (1474944, 1475943), (1475944, 1476943), (1476944, 1477943), (1477944, 1478943),
                (1478944, 1479943), (1479944, 1480943), (1480944, 1481943), (1481944, 1482943), (1482944, 1483943),
                (1483944, 1484943), (1484944, 1485943), (1485944, 1486943), (1486944, 1487943), (1487944, 1488943),
                (1488944, 1489943), (1489944, 1490943), (1490944, 1491943), (1491944, 1492943), (1492944, 1493943),
                (1493944, 1494943), (1494944, 1495943), (1495944, 1496943), (1496944, 1497943), (1497944, 1498943),
                (1498944, 1499943), (1499944, 1500943), (1500944, 1501943), (1501944, 1502943), (1502944, 1503943),
                (1503944, 1504943), (1504944, 1505943), (1505944, 1506943), (1506944, 1507943), (1507944, 1508943),
                (1508944, 1509943), (1509944, 1510943), (1510944, 1511943), (1511944, 1512944), (1512945, 1513944),
                (1513945, 1514944), (1514945, 1515944), (1515945, 1516944), (1516945, 1517944), (1517945, 1518944),
                (1518945, 1519944), (1519945, 1520944), (1520945, 1521944), (1521945, 1522944), (1522945, 1523944),
                (1523945, 1524944), (1524945, 1525944), (1525945, 1526944), (1526945, 1527944), (1527945, 1528944),
                (1528945, 1529944), (1529945, 1530944), (1530945, 1531944), (1531945, 1532944), (1532945, 1533944),
                (1533945, 1534944), (1534945, 1535944), (1535945, 1536944), (1536945, 1537944), (1537945, 1538944),
                (1538945, 1539944), (1539945, 1540944), (1540945, 1541944), (1541945, 1542944), (1542945, 1543944),
                (1543945, 1544944), (1544945, 1545944), (1545945, 1546944), (1546945, 1547944), (1547945, 1548944),
                (1548945, 1549944), (1549945, 1550944), (1550945, 1551944), (1551945, 1552944), (1552945, 1553944),
                (1553945, 1554944), (1554945, 1555944), (1555945, 1556944), (1556945, 1557944), (1557945, 1558944),
                (1558945, 1559944), (1559945, 1560944), (1560945, 1561944), (1561945, 1562944), (1562945, 1563944),
                (1563945, 1564945), (1564946, 1565945), (1565946, 1566945), (1566946, 1567945), (1567946, 1568945),
                (1568946, 1569945), (1569946, 1570945), (1570946, 1571945), (1571946, 1572945), (1572946, 1573945),
                (1573946, 1574945), (1574946, 1575945), (1575946, 1576945), (1576946, 1577945), (1577946, 1578945),
                (1578946, 1579945), (1579946, 1580945), (1580946, 1581946), (1581947, 1582946), (1582947, 1583946),
                (1583947, 1584946), (1584947, 1585946), (1585947, 1586946), (1586947, 1587946), (1587947, 1588946),
                (1588947, 1589946), (1589947, 1590946), (1590947, 1591946), (1591947, 1592946), (1592947, 1593946),
                (1593947, 1594946), (1594947, 1595946), (1595947, 1596946), (1596947, 1597946), (1597947, 1598946),
                (1598947, 1599946), (1599947, 1600946), (1600947, 1601946), (1601947, 1602946), (1602947, 1603946),
                (1603947, 1604946), (1604947, 1605946), (1605947, 1606946), (1606947, 1607946), (1607947, 1608946),
                (1608947, 1609946), (1609947, 1610946), (1610947, 1611946), (1611947, 1612946), (1612947, 1613946),
                (1613947, 1614946), (1614947, 1615946), (1615947, 1616946), (1616947, 1617946), (1617947, 1618946),
                (1618947, 1619946), (1619947, 1620946), (1620947, 1621946), (1621947, 1622946), (1622947, 1623946),
                (1623947, 1624946), (1624947, 1625946), (1625947, 1626946), (1626947, 1627946), (1627947, 1628946),
                (1628947, 1629946), (1629947, 1630946), (1630947, 1631946), (1631947, 1632946), (1632947, 1633946),
                (1633947, 1634946), (1634947, 1635946), (1635947, 1636946), (1636947, 1637946), (1637947, 1638946),
                (1638947, 1639946), (1639947, 1640946), (1640947, 1641952), (1641953, 1642953), (1642954, 1643953),
                (1643954, 1644953), (1644954, 1645953), (1645954, 1646953), (1646954, 1647953), (1647954, 1648953),
                (1648954, 1649953), (1649954, 1650953), (1650954, 1651953), (1651954, 1652953), (1652954, 1653953),
                (1653954, 1654953), (1654954, 1655953), (1655954, 1656953), (1656954, 1657953), (1657954, 1658953),
                (1658954, 1659953), (1659954, 1660953), (1660954, 1661953), (1661954, 1662953), (1662954, 1663953),
                (1663954, 1664953), (1664954, 1665953), (1665954, 1666953), (1666954, 1667953), (1667954, 1668953),
                (1668954, 1669953), (1669954, 1670953), (1670954, 1671953), (1671954, 1672953), (1672954, 1673953),
                (1673954, 1674953), (1674954, 1675953), (1675954, 1676953), (1676954, 1677953), (1677954, 1678953),
                (1678954, 1679953), (1679954, 1680953), (1680954, 1681953), (1681954, 1682953), (1682954, 1683953),
                (1683954, 1684953), (1684954, 1685953), (1685954, 1686953), (1686954, 1687953), (1687954, 1688953),
                (1688954, 1689953), (1689954, 1690953), (1690954, 1691953), (1691954, 1692953), (1692954, 1693953),
                (1693954, 1694953), (1694954, 1695954), (1695955, 1696954), (1696955, 1697954), (1697955, 1698954),
                (1698955, 1699954), (1699955, 1700954), (1700955, 1701954), (1701955, 1702954), (1702955, 1703954),
                (1703955, 1704954), (1704955, 1705954), (1705955, 1706954), (1706955, 1707954), (1707955, 1708954),
                (1708955, 1709954), (1709955, 1710954), (1710955, 1711954), (1711955, 1712954), (1712955, 1713954),
                (1713955, 1714954), (1714955, 1715954), (1715955, 1716954), (1716955, 1717955), (1717956, 1718955),
                (1718956, 1719955), (1719956, 1720955), (1720956, 1721955), (1721956, 1722955), (1722956, 1723955),
                (1723956, 1724955), (1724956, 1725955), (1725956, 1726955), (1726956, 1727955), (1727956, 1729455),
                (1729456, 1730455), (1730456, 1731455), (1731456, 1732455), (1732456, 1733455), (1733456, 1734455),
                (1734456, 1735455), (1735456, 1736455), (1736456, 1737455), (1737456, 1738455), (1738456, 1739455),
                (1739456, 1740455), (1740456, 1741455), (1741456, 1742455), (1742456, 1743455), (1743456, 1744455),
                (1744456, 1745455), (1745456, 1746455), (1746456, 1747455), (1747456, 1748455), (1748456, 1749455),
                (1749456, 1750455), (1750456, 1751455), (1751456, 1752455), (1752456, 1753455), (1753456, 1754455),
                (1754456, 1755455), (1755456, 1756455), (1756456, 1757455), (1757456, 1758455), (1758456, 1759455),
                (1759456, 1760455), (1760456, 1761455), (1761456, 1762455), (1762456, 1763455), (1763456, 1764455),
                (1764456, 1765455), (1765456, 1766455), (1766456, 1767455), (1767456, 1768455), (1768456, 1769455),
                (1769456, 1770455), (1770456, 1771455), (1771456, 1772455), (1772456, 1773455), (1773456, 1774455),
                (1774456, 1775455), (1775456, 1776455), (1776456, 1777455), (1777456, 1778455), (1778456, 1779455),
                (1779456, 1780455), (1780456, 1781455), (1781456, 1782455), (1782456, 1783455), (1783456, 1784455),
                (1784456, 1785455), (1785456, 1786455), (1786456, 1787455), (1787456, 1788455), (1788456, 1789455),
                (1789456, 1790455), (1790456, 1791455), (1791456, 1792455), (1792456, 1793455), (1793456, 1794455),
                (1794456, 1795455), (1795456, 1796455), (1796456, 1797455), (1797456, 1798455), (1798456, 1799455),
                (1799456, 1800455), (1800456, 1801455), (1801456, 1802455), (1802456, 1803455), (1803456, 1804455),
                (1804456, 1805455), (1805456, 1806455), (1806456, 1807455), (1807456, 1808455), (1808456, 1809455),
                (1809456, 1810455), (1810456, 1811455), (1811456, 1812455), (1812456, 1813455), (1813456, 1814455),
                (1814456, 1815455), (1815456, 1816455), (1816456, 1817455), (1817456, 1818455), (1818456, 1819455),
                (1819456, 1820455), (1820456, 1821455), (1821456, 1822455), (1822456, 1823455), (1823456, 1824455),
                (1824456, 1825455), (1825456, 1826455), (1826456, 1827455), (1827456, 1828455), (1828456, 1829455),
                (1829456, 1830955), (1830956, 1831955), (1831956, 1833455), (1833456, 1834455), (1834456, 1835455),
                (1835456, 1836455), (1836456, 1837455), (1837456, 1838455), (1838456, 1839455), (1839456, 1840455),
                (1840456, 1841455), (1841456, 1842455), (1842456, 1843455), (1843456, 1844455), (1844456, 1845455),
                (1845456, 1846455), (1846456, 1847455), (1847456, 1848456), (1848457, 1849456), (1849457, 1850458),
                (1850459, 1851460), (1851461, 1852460), (1852461, 1853460), (1853461, 1854460), (1854461, 1855460),
                (1855461, 1856460), (1856461, 1857460), (1857461, 1858460), (1858461, 1859460), (1859461, 1860460),
                (1860461, 1861460), (1861461, 1862460), (1862461, 1863460), (1863461, 1864460), (1864461, 1865460),
                (1865461, 1866460), (1866461, 1867460), (1867461, 1868460), (1868461, 1869460), (1869461, 1870460),
                (1870461, 1871460), (1871461, 1872460), (1872461, 1873460), (1873461, 1874460), (1874461, 1875460),
                (1875461, 1876460), (1876461, 1877460), (1877461, 1878460), (1878461, 1879460), (1879461, 1880460),
                (1880461, 1881460), (1881461, 1882460), (1882461, 1883460), (1883461, 1884460), (1884461, 1885460),
                (1885461, 1886460), (1886461, 1887460), (1887461, 1888460), (1888461, 1889460), (1889461, 1890460),
                (1890461, 1891460), (1891461, 1892460), (1892461, 1893460), (1893461, 1894460), (1894461, 1895460),
                (1895461, 1896460), (1896461, 1897460), (1897461, 1898460), (1898461, 1899460), (1899461, 1900460),
                (1900461, 1901460), (1901461, 1902460), (1902461, 1903460), (1903461, 1904460), (1904461, 1905460),
                (1905461, 1906460), (1906461, 1907460), (1907461, 1908460), (1908461, 1909460), (1909461, 1910460),
                (1910461, 1911460), (1911461, 1912460), (1912461, 1913460), (1913461, 1914460), (1914461, 1915460),
                (1915461, 1916460), (1916461, 1917460), (1917461, 1918460), (1918461, 1919460), (1919461, 1920460),
                (1920461, 1921460), (1921461, 1922460), (1922461, 1923460), (1923461, 1924460), (1924461, 1925460),
                (1925461, 1926460), (1926461, 1927460), (1927461, 1928460), (1928461, 1929460), (1929461, 1930460),
                (1930461, 1931460), (1931461, 1932460), (1932461, 1933460), (1933461, 1934460), (1934461, 1935460),
                (1935461, 1936460), (1936461, 1937460), (1937461, 1938460), (1938461, 1939460), (1939461, 1940460),
                (1940461, 1941460), (1941461, 1942460), (1942461, 1943460), (1943461, 1944460), (1944461, 1945460),
                (1945461, 1946460), (1946461, 1947460), (1947461, 1948460), (1948461, 1949460), (1949461, 1950460),
                (1950461, 1951460), (1951461, 1952460), (1952461, 1953460), (1953461, 1954460), (1954461, 1955460),
                (1955461, 1956460), (1956461, 1957460), (1957461, 1958460), (1958461, 1959460), (1959461, 1960460),
                (1960461, 1961460), (1961461, 1962460), (1962461, 1963460), (1963461, 1964460), (1964461, 1965460),
                (1965461, 1966460), (1966461, 1967460), (1967461, 1968460), (1968461, 1969460), (1969461, 1970460),
                (1970461, 1971460), (1971461, 1972460), (1972461, 1973460), (1973461, 1974460), (1974461, 1975460),
                (1975461, 1976460), (1976461, 1977460), (1977461, 1978460), (1978461, 1979460), (1979461, 1980460),
                (1980461, 1981460), (1981461, 1982460), (1982461, 1983460), (1983461, 1984460), (1984461, 1985460),
                (1985461, 1986460), (1986461, 1987460), (1987461, 1988460), (1988461, 1989460), (1989461, 1990460),
                (1990461, 1991460), (1991461, 1992461), (1992462, 1993461), (1993462, 1994463), (1994464, 1995464),
                (1995465, 1996467), (1996468, 1997468), (1997469, 1998468), (1998469, 1999468), (1999469, 2000468),
                (2000469, 2001468), (2001469, 2002468), (2002469, 2003468), (2003469, 2004468), (2004469, 2005468),
                (2005469, 2006468), (2006469, 2007468), (2007469, 2008468), (2008469, 2009468), (2009469, 2010468),
                (2010469, 2011468), (2011469, 2012468), (2012469, 2013468), (2013469, 2014468), (2014469, 2015468),
                (2015469, 2016468), (2016469, 2017468), (2017469, 2018468), (2018469, 2019468), (2019469, 2020468),
                (2020469, 2021468), (2021469, 2022468), (2022469, 2023468), (2023469, 2024468), (2024469, 2025468),
                (2025469, 2026468), (2026469, 2027468), (2027469, 2028468), (2028469, 2029468), (2029469, 2030468),
                (2030469, 2031468), (2031469, 2032598), (2032599, 2033599), (2033600, 2034599), (2034600, 2035601),
                (2035602, 2036602), (2036603, 2037603), (2037604, 2038604), (2038605, 2039604), (2039605, 2040604),
                (2040605, 2041604), (2041605, 2042604), (2042605, 2043604), (2043605, 2044604), (2044605, 2045604),
                (2045605, 2046604), (2046605, 2047604), (2047605, 2048604), (2048605, 2049604), (2049605, 2050604),
                (2050605, 2051604), (2051605, 2052604), (2052605, 2053604), (2053605, 2054604), (2054605, 2055604),
                (2055605, 2056604), (2056605, 2057604), (2057605, 2058604), (2058605, 2059605), (2059606, 2060606),
                (2060607, 2061607), (2061608, 2062610), (2062611, 2063610), (2063611, 2064610), (2064611, 2065612),
                (2065613, 2066616), (2066617, 2067616), (2067617, 2068616), (2068617, 2069616), (2069617, 2070616),
                (2070617, 2071618), (2071619, 2072619), (2072620, 2073620), (2073621, 2074622), (2074623, 2075622),
                (2075623, 2076622), (2076623, 2077623), (2077624, 2078623), (2078624, 2079623), (2079624, 2080636),
                (2080637, 2081636), (2081637, 2082638), (2082639, 2083641), (2083642, 2084645), (2084646, 2085648),
                (2085649, 2086649), (2086650, 2087654), (2087655, 2088659), (2088660, 2089660), (2089661, 2090661),
                (2090662, 2091661), (2091662, 2092662), (2092663, 2093663), (2093664, 2094665), (2094666, 2095665),
                (2095666, 2096666), (2096667, 2097666), (2097667, 2098666), (2098667, 2099666), (2099667, 2100666),
                (2100667, 2101668), (2101669, 2102668), (2102669, 2103668), (2103669, 2104669), (2104670, 2105672),
                (2105673, 2106675), (2106676, 2107676), (2107677, 2108676), (2108677, 2109676), (2109677, 2110676),
                (2110677, 2111676), (2111677, 2112680), (2112681, 2113680), (2113681, 2114680), (2114681, 2115682),
                (2115683, 2116682), (2116683, 2117682), (2117683, 2118683), (2118684, 2119684), (2119685, 2120685),
                (2120686, 2121685), (2121686, 2122685), (2122686, 2123685), (2123686, 2124685), (2124686, 2125685),
                (2125686, 2126685), (2126686, 2127685), (2127686, 2128685), (2128686, 2129685), (2129686, 2130685),
                (2130686, 2131685), (2131686, 2132685), (2132686, 2133685), (2133686, 2134685), (2134686, 2135685),
                (2135686, 2136685), (2136686, 2137685), (2137686, 2138685), (2138686, 2139685), (2139686, 2140685),
                (2140686, 2141685), (2141686, 2142685), (2142686, 2143685), (2143686, 2144685), (2144686, 2145685),
                (2145686, 2146685), (2146686, 2147685), (2147686, 2148685), (2148686, 2149685), (2149686, 2150685),
                (2150686, 2151685), (2151686, 2152685), (2152686, 2153685), (2153686, 2154685), (2154686, 2155685),
                (2155686, 2156685), (2156686, 2157685), (2157686, 2158685), (2158686, 2159685), (2159686, 2160685),
                (2160686, 2161685), (2161686, 2162685), (2162686, 2163685), (2163686, 2164685), (2164686, 2165685),
                (2165686, 2166685), (2166686, 2167685), (2167686, 2168685), (2168686, 2169685), (2169686, 2170685),
                (2170686, 2171685), (2171686, 2172685), (2172686, 2173685), (2173686, 2174685), (2174686, 2175685),
                (2175686, 2176685), (2176686, 2177685), (2177686, 2178685), (2178686, 2179685), (2179686, 2180685),
                (2180686, 2181685), (2181686, 2182685), (2182686, 2183685), (2183686, 2184685), (2184686, 2185685),
                (2185686, 2186685), (2186686, 2187685), (2187686, 2188685), (2188686, 2189685), (2189686, 2190685),
                (2190686, 2191685), (2191686, 2192685), (2192686, 2193685), (2193686, 2194685), (2194686, 2195685),
                (2195686, 2196685), (2196686, 2197685), (2197686, 2198685), (2198686, 2199685), (2199686, 2200685),
                (2200686, 2202683), (2202684, 2203683), (2203684, 2204684), (2204685, 2205685), (2205686, 2206687),
                (2206688, 2207690), (2207691, 2208702), (2208703, 2209702), (2209703, 2210702), (2210703, 2211703),
                (2211704, 2212708), (2212709, 2213712), (2213713, 2214717), (2214718, 2215718), (2215719, 2216722),
                (2216723, 2217723), (2217724, 2218724), (2218725, 2219726), (2219727, 2220727), (2220728, 2221727),
                (2221728, 2222732), (2222733, 2223734), (2223735, 2224735), (2224736, 2225739), (2225740, 2226741),
                (2226742, 2227743), (2227744, 2228746), (2228747, 2229747), (2229748, 2230748), (2230749, 2231748),
                (2231749, 2232748), (2232749, 2233748), (2233749, 2234748), (2234749, 2235748), (2235749, 2236748),
                (2236749, 2237748), (2237749, 2238748), (2238749, 2239748), (2239749, 2240748), (2240749, 2241748),
                (2241749, 2242748), (2242749, 2243749), (2243750, 2244749), (2244750, 2245749), (2245750, 2246749),
                (2246750, 2247749), (2247750, 2248749), (2248750, 2249749), (2249750, 2250749), (2250750, 2251749),
                (2251750, 2252749), (2252750, 2253749), (2253750, 2254749), (2254750, 2255749), (2255750, 2256749),
                (2256750, 2257749), (2257750, 2258749), (2258750, 2259749), (2259750, 2260749), (2260750, 2261749),
                (2261750, 2262749), (2262750, 2263749), (2263750, 2264749), (2264750, 2265749), (2265750, 2266749),
                (2266750, 2267749), (2267750, 2268749), (2268750, 2269749), (2269750, 2270749), (2270750, 2271749),
                (2271750, 2272749), (2272750, 2273749), (2273750, 2274749), (2274750, 2275749), (2275750, 2276749),
                (2276750, 2277749), (2277750, 2278749), (2278750, 2279749), (2279750, 2280749), (2280750, 2281750),
                (2281751, 2282750), (2282751, 2283750), (2283751, 2284750), (2284751, 2285750), (2285751, 2286750),
                (2286751, 2287750), (2287751, 2288750), (2288751, 2289750), (2289751, 2290750), (2290751, 2291750),
                (2291751, 2292750), (2292751, 2293750), (2293751, 2294750), (2294751, 2295750), (2295751, 2296750),
                (2296751, 2297750), (2297751, 2298750), (2298751, 2299750), (2299751, 2300750), (2300751, 2301750),
                (2301751, 2302750), (2302751, 2303750), (2303751, 2304750), (2304751, 2305750), (2305751, 2306750),
                (2306751, 2307750), (2307751, 2308750), (2308751, 2309750), (2309751, 2310750), (2310751, 2311750),
                (2311751, 2312750), (2312751, 2313750), (2313751, 2314750), (2314751, 2315750), (2315751, 2316750),
                (2316751, 2317750), (2317751, 2318750), (2318751, 2319750), (2319751, 2320768), (2320769, 2321773),
                (2321774, 2322773), (2322774, 2323774), (2323775, 2324779), (2324780, 2325783), (2325784, 2326785),
                (2326786, 2327790), (2327791, 2328791), (2328792, 2329794), (2329795, 2330795), (2330796, 2331797),
                (2331798, 2332798), (2332799, 2333798), (2333799, 2334799), (2334800, 2335802), (2335803, 2336802),
                (2336803, 2337804), (2337805, 2338805), (2338806, 2339805), (2339806, 2340807), (2340808, 2341808),
                (2341809, 2342811), (2342812, 2343812), (2343813, 2344813), (2344814, 2345813), (2345814, 2346813),
                (2346814, 2347813), (2347814, 2348813), (2348814, 2349813), (2349814, 2350813), (2350814, 2351813),
                (2351814, 2352813), (2352814, 2353813), (2353814, 2354813), (2354814, 2355813), (2355814, 2356813),
                (2356814, 2357813), (2357814, 2358813), (2358814, 2359813), (2359814, 2360813), (2360814, 2361813),
                (2361814, 2362813), (2362814, 2363813), (2363814, 2364813), (2364814, 2365813), (2365814, 2366813),
                (2366814, 2367813), (2367814, 2368813), (2368814, 2369813), (2369814, 2370813), (2370814, 2371813),
                (2371814, 2372814), (2372815, 2373814), (2373815, 2374814), (2374815, 2375814), (2375815, 2376814),
                (2376815, 2377814), (2377815, 2378814), (2378815, 2379814), (2379815, 2380814), (2380815, 2381814),
                (2381815, 2382814), (2382815, 2383814), (2383815, 2384814), (2384815, 2385814), (2385815, 2386814),
                (2386815, 2387814), (2387815, 2388815), (2388816, 2389827), (2389828, 2390829), (2390830, 2391830),
                (2391831, 2392835), (2392836, 2393836), (2393837, 2394841), (2394842, 2395841), (2395842, 2396842),
                (2396843, 2397842), (2397843, 2398842), (2398843, 2399842), (2399843, 2400842), (2400843, 2401842),
                (2401843, 2402842), (2402843, 2403842), (2403843, 2404842), (2404843, 2405842), (2405843, 2406842),
                (2406843, 2407842), (2407843, 2408842), (2408843, 2409842), (2409843, 2410842), (2410843, 2411842),
                (2411843, 2412842), (2412843, 2413842), (2413843, 2414842), (2414843, 2415842), (2415843, 2416842),
                (2416843, 2417842), (2417843, 2418842), (2418843, 2419842), (2419843, 2420842), (2420843, 2421842),
                (2421843, 2422842), (2422843, 2423842), (2423843, 2424842), (2424843, 2425842), (2425843, 2426842),
                (2426843, 2427842), (2427843, 2428842), (2428843, 2429842), (2429843, 2430842), (2430843, 2431842),
                (2431843, 2432842), (2432843, 2433842), (2433843, 2434842), (2434843, 2435842), (2435843, 2436842),
                (2436843, 2437842), (2437843, 2438842), (2438843, 2439842), (2439843, 2440842), (2440843, 2441842),
                (2441843, 2442842), (2442843, 2443843), (2443844, 2444844), (2444845, 2445844), (2445845, 2446844),
                (2446845, 2447844), (2447845, 2448844), (2448845, 2449848), (2449849, 2450848), (2450849, 2451883),
                (2451884, 2452884), (2452885, 2462285), (2462286, 2473331), (2473332, 2474339), (2474340, 2475339),
                (2475340, 2476339), (2476340, 2477339), (2477340, 2478339), (2478340, 2479339), (2479340, 2480339),
                (2480340, 2481339), (2481340, 2482339), (2482340, 2483339), (2483340, 2484339), (2484340, 2485339),
                (2485340, 2486339), (2486340, 2487339), (2487340, 2488340), (2488341, 2489340), (2489341, 2490340),
                (2490341, 2491341), (2491342, 2492341), (2492342, 2493341), (2493342, 2494341), (2494342, 2495341),
                (2495342, 2496341), (2496342, 2497341), (2497342, 2498341), (2498342, 2499341), (2499342, 2500341),
                (2500342, 2501341), (2501342, 2502341), (2502342, 2503341), (2503342, 2504341), (2504342, 2505341),
                (2505342, 2506341), (2506342, 2507341), (2507342, 2508344), (2508345, 2509344), (2509345, 2510344),
                (2510345, 2511344), (2511345, 2512344), (2512345, 2513348), (2513349, 2514348), (2514349, 2515348),
                (2515349, 2516349), (2516350, 2517349), (2517350, 2518352), (2518353, 2519352), (2519353, 2520352),
                (2520353, 2521354), (2521355, 2522354), (2522355, 2523354), (2523355, 2524356), (2524357, 2525356),
                (2525357, 2526356), (2526357, 2527356), (2527357, 2528356), (2528357, 2529356), (2529357, 2530356),
                (2530357, 2531365), (2531366, 2532365), (2532366, 2533370), (2533371, 2534370), (2534371, 2535370),
                (2535371, 2536370), (2536371, 2537370), (2537371, 2538370), (2538371, 2539371), (2539372, 2540371),
                (2540372, 2541371), (2541372, 2542373), (2542374, 2543373), (2543374, 2544374), (2544375, 2545377),
                (2545378, 2546377), (2546378, 2547379), (2547380, 2548379), (2548380, 2549379), (2549380, 2550379),
                (2550380, 2551379), (2551380, 2552384), (2552385, 2553384), (2553385, 2554384), (2554385, 2555384),
                (2555385, 2556384), (2556385, 2557384), (2557385, 2558384), (2558385, 2559384), (2559385, 2560384),
                (2560385, 2561384), (2561385, 2562384), (2562385, 2563384), (2563385, 2564384), (2564385, 2565397),
                (2565398, 2566397), (2566398, 2567397), (2567398, 2568397), (2568398, 2569399), (2569400, 2570400),
                (2570401, 2571400), (2571401, 2572401), (2572402, 2573401), (2573402, 2574401), (2574402, 2575401),
                (2575402, 2576401), (2576402, 2577401), (2577402, 2578401), (2578402, 2579401), (2579402, 2580401),
                (2580402, 2581401), (2581402, 2582402), (2582403, 2583402), (2583403, 2584402), (2584403, 2585402),
                (2585403, 2586402), (2586403, 2587402), (2587403, 2588402), (2588403, 2589402), (2589403, 2590402),
                (2590403, 2591402), (2591403, 2592402), (2592403, 2593404), (2593405, 2594405), (2594406, 2595405),
                (2595406, 2596405), (2596406, 2597406), (2597407, 2598406), (2598407, 2599406), (2599407, 2600407),
                (2600408, 2601407), (2601408, 2602412), (2602413, 2603412), (2603413, 2604413), (2604414, 2605414),
                (2605415, 2606414), (2606415, 2607414), (2607415, 2608414), (2608415, 2609414), (2609415, 2610414),
                (2610415, 2611414), (2611415, 2612414), (2612415, 2613414), (2613415, 2614414), (2614415, 2615414),
                (2615415, 2616418), (2616419, 2617418), (2617419, 2618418), (2618419, 2619418), (2619419, 2620418),
                (2620419, 2621418), (2621419, 2622418), (2622419, 2623418), (2623419, 2624418), (2624419, 2625419),
                (2625420, 2626420), (2626421, 2627420), (2627421, 2628420), (2628421, 2629420), (2629421, 2630420),
                (2630421, 2631420), (2631421, 2632420), (2632421, 2633420), (2633421, 2634420), (2634421, 2635420),
                (2635421, 2636420), (2636421, 2637420), (2637421, 2638420), (2638421, 2639420), (2639421, 2640420),
                (2640421, 2641420), (2641421, 2642420), (2642421, 2643420), (2643421, 2644420), (2644421, 2645420),
                (2645421, 2646420), (2646421, 2647420), (2647421, 2648420), (2648421, 2649420), (2649421, 2650420),
                (2650421, 2651420), (2651421, 2652420), (2652421, 2653420), (2653421, 2654420), (2654421, 2655420),
                (2655421, 2656420), (2656421, 2657420), (2657421, 2658420), (2658421, 2659420), (2659421, 2660420),
                (2660421, 2661420), (2661421, 2662420), (2662421, 2663420), (2663421, 2664420), (2664421, 2665420),
                (2665421, 2666422), (2666423, 2667422), (2667423, 2668422), (2668423, 2669422), (2669423, 2670422),
                (2670423, 2671422), (2671423, 2672422), (2672423, 2673422), (2673423, 2674422), (2674423, 2675424),
                (2675425, 2676424), (2676425, 2677424), (2677425, 2678424), (2678425, 2679426), (2679427, 2680426),
                (2680427, 2681426), (2681427, 2682426), (2682427, 2683426), (2683427, 2684426), (2684427, 2685428),
                (2685429, 2686428), (2686429, 2687437), (2687438, 2688437), (2688438, 2689437), (2689438, 2690437),
                (2690438, 2691437), (2691438, 2692437), (2692438, 2693437), (2693438, 2694437), (2694438, 2695437),
                (2695438, 2696437), (2696438, 2697437), (2697438, 2698437), (2698438, 2699437), (2699438, 2700437),
                (2700438, 2701437), (2701438, 2702437), (2702438, 2703437), (2703438, 2704437), (2704438, 2705437),
                (2705438, 2706437), (2706438, 2707437), (2707438, 2708437), (2708438, 2709437), (2709438, 2710437),
                (2710438, 2711437), (2711438, 2712437), (2712438, 2713437), (2713438, 2714437), (2714438, 2715437),
                (2715438, 2716438), (2716439, 2717444), (2717445, 2718444), (2718445, 2719444), (2719445, 2720444),
                (2720445, 2721444), (2721445, 2722444), (2722445, 2723444), (2723445, 2724444), (2724445, 2725444),
                (2725445, 2726444), (2726445, 2727444), (2727445, 2728444), (2728445, 2729512), (2729513, 2730512),
                (2730513, 2731512), (2731513, 2732512), (2732513, 2733512), (2733513, 2734512), (2734513, 2735512),
                (2735513, 2736513), (2736514, 2737513), (2737514, 2738513), (2738514, 2739513), (2739514, 2740513),
                (2740514, 2741513), (2741514, 2742515), (2742516, 2743515), (2743516, 2744515), (2744516, 2745515),
                (2745516, 2746516), (2746517, 2747516), (2747517, 2748516), (2748517, 2749516), (2749517, 2750516),
                (2750517, 2751516), (2751517, 2752516), (2752517, 2753517), (2753518, 2754517), (2754518, 2755517),
                (2755518, 2756517), (2756518, 2757517), (2757518, 2758517), (2758518, 2759517), (2759518, 2760517),
                (2760518, 2761517), (2761518, 2762517), (2762518, 2763517), (2763518, 2764517), (2764518, 2765518),
                (2765519, 2766518), (2766519, 2767518), (2767519, 2768523), (2768524, 2769523), (2769524, 2770523),
                (2770524, 2771523), (2771524, 2772523), (2772524, 2773524), (2773525, 2774524), (2774525, 2775524),
                (2775525, 2776524), (2776525, 2777526), (2777527, 2778526), (2778527, 2779526), (2779527, 2780526),
                (2780527, 2781527), (2781528, 2782527), (2782528, 2783527), (2783528, 2784527), (2784528, 2785527),
                (2785528, 2786528), (2786529, 2787528), (2787529, 2788528), (2788529, 2789528), (2789529, 2790528),
                (2790529, 2791528), (2791529, 2792528), (2792529, 2793528), (2793529, 2794530), (2794531, 2795530),
                (2795531, 2796531), (2796532, 2797531), (2797532, 2798531), (2798532, 2799595), (2799596, 2800598),
                (2800599, 2801619), (2801620, 2802621), (2802622, 2803621), (2803622, 2804621), (2804622, 2805621),
                (2805622, 2806621), (2806622, 2807621), (2807622, 2808621), (2808622, 2809622), (2809623, 2810622),
                (2810623, 2811622), (2811623, 2812622), (2812623, 2813622), (2813623, 2814622), (2814623, 2815622),
                (2815623, 2816622), (2816623, 2817622), (2817623, 2818622), (2818623, 2819622), (2819623, 2820622),
                (2820623, 2821622), (2821623, 2822622), (2822623, 2823622), (2823623, 2824622), (2824623, 2825622),
                (2825623, 2826622), (2826623, 2827622), (2827623, 2828622), (2828623, 2829626), (2829627, 2830626),
                (2830627, 2831626), (2831627, 2832627), (2832628, 2833627), (2833628, 2834627), (2834628, 2835627),
                (2835628, 2836627), (2836628, 2837627), (2837628, 2838627), (2838628, 2839627), (2839628, 2840627),
                (2840628, 2841627), (2841628, 2842627), (2842628, 2843627), (2843628, 2844627), (2844628, 2845627),
                (2845628, 2846628), (2846629, 2847628), (2847629, 2848628), (2848629, 2849629), (2849630, 2850629),
                (2850630, 2851629), (2851630, 2852629), (2852630, 2853629), (2853630, 2854629), (2854630, 2855629),
                (2855630, 2856629), (2856630, 2857630), (2857631, 2858631), (2858632, 2859631), (2859632, 2860632),
                (2860633, 2861632), (2861633, 2862632), (2862633, 2863632), (2863633, 2864632), (2864633, 2865633),
                (2865634, 2866633), (2866634, 2867633), (2867634, 2868635), (2868636, 2869635), (2869636, 2870635),
                (2870636, 2871639), (2871640, 2872639), (2872640, 2873640), (2873641, 2874641), (2874642, 2875641),
                (2875642, 2876648), (2876649, 2877648), (2877649, 2878648), (2878649, 2879648), (2879649, 2880648),
                (2880649, 2881649), (2881650, 2882649), (2882650, 2883649), (2883650, 2884649), (2884650, 2885649),
                (2885650, 2886649), (2886650, 2887649), (2887650, 2888650), (2888651, 2889650), (2889651, 2890653),
                (2890654, 2891653), (2891654, 2892653), (2892654, 2893654), (2893655, 2894654), (2894655, 2895654),
                (2895655, 2896654), (2896655, 2897654), (2897655, 2898654), (2898655, 2899654), (2899655, 2900654),
                (2900655, 2901655), (2901656, 2902655), (2902656, 2903657), (2903658, 2904657), (2904658, 2905657),
                (2905658, 2906657), (2906658, 2907657), (2907658, 2908657), (2908658, 2909681), (2909682, 2910681),
                (2910682, 2911681), (2911682, 2912681), (2912682, 2913681), (2913682, 2914746), (2914747, 2915746),
                (2915747, 2916746), (2916747, 2917746), (2917747, 2918753), (2918754, 2919753), (2919754, 2920753),
                (2920754, 2921755), (2921756, 2922755), (2922756, 2923755), (2923756, 2924755), (2924756, 2925755),
                (2925756, 2926755), (2926756, 2927755), (2927756, 2928755), (2928756, 2929755), (2929756, 2930755),
                (2930756, 2931755), (2931756, 2932755), (2932756, 2933755), (2933756, 2934755), (2934756, 2935755),
                (2935756, 2936755), (2936756, 2937756), (2937757, 2938756), (2938757, 2939756), (2939757, 2940759),
                (2940760, 2941762), (2941763, 2942762), (2942763, 2943777), (2943778, 2944777), (2944778, 2945777),
                (2945778, 2946777), (2946778, 2947777), (2947778, 2948777), (2948778, 2949777), (2949778, 2950777),
                (2950778, 2951777), (2951778, 2952778), (2952779, 2953778), (2953779, 2954778), (2954779, 2955780),
                (2955781, 2956780), (2956781, 2957780), (2957781, 2958780), (2958781, 2959780), (2959781, 2960780),
                (2960781, 2961781), (2961782, 2962781), (2962782, 2963782), (2963783, 2964788), (2964789, 2965788),
                (2965789, 2966788), (2966789, 2967788), (2967789, 2968788), (2968789, 2969790), (2969792, 2970791),
                (2970792, 2971791), (2971792, 2972791), (2972792, 2973792), (2973793, 2974792), (2974793, 2975792),
                (2975793, 2976809), (2976810, 2977809), (2977810, 2978809), (2978810, 2979811), (2979812, 2980811),
                (2980812, 2981812), (2981813, 2982812), (2982813, 2983812), (2983813, 2984812), (2984813, 2985812),
                (2985813, 2986812), (2986813, 2987813), (2987814, 2988813), (2988814, 2989813), (2989814, 2990813),
                (2990814, 2991813), (2991814, 2992813), (2992814, 2993813), (2993814, 2994813), (2994814, 2995813),
                (2995814, 2996814), (2996815, 2997814), (2997815, 2998814), (2998815, 2999814), (2999815, 3000827),
                (3000828, 3001827), (3001828, 3002829), (3002830, 3003836), (3003837, 3004836), (3004837, 3005836),
                (3005837, 3006836), (3006837, 3007836), (3007837, 3008863), (3008864, 3009863), (3009864, 3010866),
                (3010867, 3011878), (3011879, 3012886), (3012887, 3013887), (3013888, 3014895), (3014896, 3015903),
                (3015904, 3016903), (3016904, 3017903), (3017904, 3018903), (3018904, 3019903), (3019904, 3020903),
                (3020904, 3021903), (3021904, 3022903), (3022904, 3023903), (3023904, 3024903), (3024904, 3025904),
                (3025905, 3026904), (3026905, 3027904), (3027905, 3028904), (3028905, 3029904), (3029905, 3030918),
                (3030919, 3031918), (3031919, 3032918), (3032919, 3033919), (3033920, 3034919), (3034920, 3035919),
                (3035920, 3036919), (3036920, 3037923), (3037924, 3038923), (3038924, 3039927), (3039928, 3040927),
                (3040928, 3041927), (3041928, 3042928), (3042929, 3043930), (3043931, 3044932), (3044933, 3045932),
                (3045933, 3046932), (3046933, 3047932), (3047933, 3048932), (3048933, 3049932), (3049933, 3050932),
                (3050933, 3051932), (3051933, 3052938), (3052939, 3053941), (3053942, 3054941), (3054942, 3055941),
                (3055942, 3056941), (3056942, 3057941), (3057942, 3058971), (3058972, 3060033), (3060034, 3061035),
                (3061036, 3062035), (3062036, 3063035), (3063036, 3064035), (3064036, 3065035), (3065036, 3066035),
                (3066036, 3067035), (3067036, 3068035), (3068036, 3069035), (3069036, 3070035), (3070036, 3071035),
                (3071036, 3072035), (3072036, 3073035), (3073036, 3074036), (3074037, 3075036), (3075037, 3076036),
                (3076037, 3077037), (3077038, 3078069), (3078070, 3079069), (3079070, 3080069), (3080070, 3081069),
                (3081070, 3082069), (3082070, 3083069), (3083070, 3084070), (3084071, 3085071), (3085072, 3086071),
                (3086072, 3087071), (3087072, 3088071), (3088072, 3089071), (3089072, 3090073), (3090074, 3091073),
                (3091074, 3092073), (3092074, 3093073), (3093074, 3094073), (3094074, 3095073), (3095074, 3096077),
                (3096078, 3097077), (3097078, 3098077), (3098078, 3099094), (3099095, 3100104), (3100105, 3101107),
                (3101108, 3102118), (3102119, 3103118), (3103119, 3104136), (3104137, 3105152), (3105153, 3106166),
                (3106167, 3107169), (3107170, 3108169), (3108170, 3109169), (3109170, 3110169), (3110170, 3111169),
                (3111170, 3112169), (3112170, 3113169), (3113170, 3114169), (3114170, 3115169), (3115170, 3116169),
                (3116170, 3117169), (3117170, 3118169), (3118170, 3119169), (3119170, 3120169), (3120170, 3121169),
                (3121170, 3122169), (3122170, 3123169), (3123170, 3124169), (3124170, 3125169), (3125170, 3126169),
                (3126170, 3127169), (3127170, 3128169), (3128170, 3129169), (3129170, 3130169), (3130170, 3131169),
                (3131170, 3132169), (3132170, 3133169), (3133170, 3134169), (3134170, 3135172), (3135173, 3136197),
                (3136198, 3137204), (3137205, 3138215), (3138216, 3139225), (3139226, 3140230), (3140231, 3141240),
                (3141241, 3142270), (3142271, 3143273), (3143274, 3144274), (3144275, 3145276), (3145277, 3146276),
                (3146277, 3147276), (3147277, 3148276), (3148277, 3149276), (3149277, 3150276), (3150277, 3151276),
                (3151277, 3152276), (3152277, 3153277), (3153278, 3154293), (3154294, 3155294), (3155295, 3156295),
                (3156296, 3157297), (3157298, 3158316), (3158317, 3159332), (3159333, 3160332), (3160333, 3161348),
                (3161349, 3162348), (3162349, 3163348), (3163349, 3164368), (3164369, 3165369), (3165370, 3166369),
                (3166370, 3167369), (3167370, 3168382), (3168383, 3169385), (3169386, 3170385), (3170386, 3171392),
                (3171393, 3172400), (3172401, 3173493), (3173494, 3174496), (3174497, 3175500), (3175501, 3176502),
                (3176503, 3177513), (3177514, 3178515), (3178516, 3179517), (3179518, 3180523), (3180524, 3181537),
                (3181538, 3182538), (3182539, 3183539), (3183540, 3184539), (3184540, 3185539), (3185540, 3186545),
                (3186546, 3187547), (3187548, 3188550), (3188551, 3189550), (3189551, 3190553), (3190554, 3191555),
                (3191556, 3192555), (3192556, 3193555), (3193556, 3194555), (3194556, 3195575), (3195576, 3196512)]

    # id_interval = (3263, 5877)
    # Set_amazon_sales_ban().handler(id_interval)
    # 创建线程池，最多同时执行5个任务
    # print(len(res_list))
    executor = ThreadPoolExecutor(max_workers=8)
    for i in range(len(res_list)):
        # 使用funools.partial函数创建一个新的函数，将参数绑定到函数中
        new_task = partial(t.handler, res_list[i])
        executor.submit(new_task)


    # 关闭线程池
    executor.shutdown()
